#pragma once

#include <string>
#include <vector>
#include <nlohmann/json.hpp> // 需要json库支持
#include "PrintInfo.h"

using json = nlohmann::json;
using namespace std;
/*
这个与其它通知不同，它是用于通知用户其聊天列表中，哪个聊天室有最新消息且消息数量为多少，用于客户端，主动拉取聊天记录；
*/
class LatestMsgNumNotify{
    private:
        string chat_room_id; 
        int num_msg;
        string time;

    public:
        LatestMsgNumNotify(const string& chat_room_id, const int& num_msg, const string& time);
        LatestMsgNumNotify(json latest_msg_num_notify_json);
        LatestMsgNumNotify()=default;

        json serialize() const;
        void unserialize(const json& j);

        string get_chat_room_id() const;
        int get_num_msg() const;
        string get_time() const;

        void set_chat_room_id(const string& chat_room_id);
        void set_num_msg(const int& num_msg);
        void set_time(const string& time);

        void add_one_num(string time);
};
